Programming Language Expressiveness and Circuit Complexity
نویسندگان
چکیده
This paper is a continuation of the work begun in 5] on establishing relative intensional expressiveness results for programming languages. Language L 1 is intensionally more expressive than L 2 , if L 1 can compute all the functions L 2 can, with at least the same asymptotic complexity. The question we address is: Does nondeterministic parallelism add intensional expressiveness? We compare deterministic and nondeterministic extensions of PCF, a simple functional programming language. We develop further the circuit semantics from our earlier work, and establish a connection between parallel PCF programs and boolean circuits. Using results from circuit complexity, and assuming hardware which can detect undeened inputs, we show that nondeterministic parallelism is indeed intensionally more expressive. More precisely, we show that nondeterministic parallelism can lead to exponentially faster programs, and also programs that do exponentially less work.
منابع مشابه
Circuit Semantics and Intensional Expressivity
We introduce a new denotational semantics for functional programming languages and use it to reason about intensional aspects of programs. Circuit semantics associates a gate with each basic construct of the language, and takes the meaning of a program to be a circuit. The dimensions of the circuit enable reasoning about running time and work required for execution. We use circuit semantics to ...
متن کاملIntensional Investigations
This thesis is about the theory and practice of intensional semantics. Traditional denotational models of programming languages are usually extensional in that they concern themselves only with input/output properties of programs. The meaning of a program is typically taken to be a function from input to output containing no information about the way that function computes its result. In an int...
متن کاملRegular Programming for Quantitative Properties of Data Streams
We propose regular cost expressions (RCEs) as a high-level programming abstraction for specifying complex numerical queries over data streams in a modular way. Our language allows the arbitrary nesting of orthogonal sets of combinators: (a) generalized versions of choice, concatenation, and Kleene-iteration from regular expressions, (b) streaming (serial) composition, and (c) numerical operator...
متن کاملA Hierarchy for Accellera's Property Specification Language
Vorliegende Diplomarbeit wurde von mir selbstständig verfasst. Es wurden keine anderen als die angegebenen Quellen und Hilfsmittel benutzt. 6 Conclusion and Future Work 55 ii 1 Introduction 1.1 Motivation Model checking and equivalence checking are state-of-the-art in modern hardware circuit design. Moreover, standardised languages like the hardware description languages VHDL [4, 56] and Verilo...
متن کاملSystem Description: DLV with Aggregates
DLV is an efficient Answer Set Programming (ASP) system implementing the (consistent) answer set semantics [GL91] with various language extensions like weak constraints [BLR00], queries, and built-in predicates. A strong point of DLV is the high expressiveness of its language, which is able to express very complex problems, even problems which are hard for the complexity class . The language of...
متن کامل